package mensagens;

import java.io.IOException;
import java.io.Serializable;
import java.net.UnknownHostException;

import model.Jogador;

import controller.ControladorCliente;
import controller.ControladorServidor;

import excecoes.ConexaoNaoIniciadaException;
import excecoes.NomeOuIpConflitanteException;

public class MensagemChat extends Mensagem implements Serializable {

	private static final long serialVersionUID = -5065316989229210055L;
	private String nomeJogadorDestino;
    private String nomeJogadorOrigem;
    private String mensagem;
    
	public MensagemChat(String nomeJogadorDestino,String msg, String nomeJogadorOrigem) throws UnknownHostException {
		super();
		this.nomeJogadorDestino = nomeJogadorDestino;
		this.mensagem = msg;
		this.nomeJogadorOrigem = nomeJogadorOrigem;
	}

	@Override
	public void tratarMensagemComoServidor() throws UnknownHostException,IOException {
		ControladorServidor controlador = ControladorServidor.getInstace();
		try {
			controlador.enviarChat(nomeJogadorDestino, mensagem, nomeJogadorOrigem);
		} catch (ConexaoNaoIniciadaException e) {
			e.printStackTrace();
		}			
	}

	@Override
	public void tratarMensagemComoCliente() throws NomeOuIpConflitanteException {
		ControladorCliente controlador = ControladorCliente.getInstance();
		controlador.atualizarChat(nomeJogadorOrigem, mensagem);
		
	}

}
